package com.logicalthinking.socialmall.service;

import com.github.chenlijia1111.utils.common.Result;
import java.util.List;
import java.util.Optional;

import com.logicalthinking.socialmall.common.vo.requestVo.admin.AdminListQueryParams;
import com.logicalthinking.socialmall.common.vo.responseVo.admin.AdminVo;
import com.logicalthinking.socialmall.entity.Admin;

/**
 * 管理员用户
 * @author chenLiJia
 * @since 2020-02-17 14:43:59
 **/
public interface AdminServiceI {

    /**
     * 添加
     *
     * @param params      1
     * @return com.github.chenlijia1111.utils.common.Result
     * @author chenLiJia
     * @since 2020-02-17 14:43:59
     **/
    Result add(Admin params);

    /**
     * 添加
     *
     * @param params      1
     * @return com.github.chenlijia1111.utils.common.Result
     * @author chenLiJia
     * @since 2020-02-17 14:43:59
     **/
    Result update(Admin params);

    /**
     * 条件查询
     *
     * @param condition      1
     * @return      * @author chenLiJia
     * @since 2020-02-17 14:43:59
     **/
    List<Admin> listByCondition(Admin condition);

    /**
     * 列表查询后台用户
     * @param params
     * @return
     */
    List<AdminVo> listPage(AdminListQueryParams params);

    /**
     * 查询当前用户
     * @return
     */
    Optional<Admin> currentAdmin();
}
